// Copyright (c) 2016, SolidCP
// SolidCP is distributed under the Creative Commons Share-alike license
// 
// SolidCP is a fork of WebsitePanel:
// Copyright (c) 2015, Outercurve Foundation.
// All rights reserved.
//
// Redistribution and use in source and binary forms, with or without modification,
// are permitted provided that the following conditions are met:
//
// - Redistributions of source code must  retain  the  above copyright notice, this
//   list of conditions and the following disclaimer.
//
// - Redistributions in binary form  must  reproduce the  above  copyright  notice,
//   this list of conditions  and  the  following  disclaimer in  the documentation
//   and/or other materials provided with the distribution.
//
// - Neither  the  name  of  the  Outercurve Foundation  nor   the   names  of  its
//   contributors may be used to endorse or  promote  products  derived  from  this
//   software without specific prior written permission.
//
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,  BUT  NOT  LIMITED TO, THE IMPLIED
// WARRANTIES  OF  MERCHANTABILITY   AND  FITNESS  FOR  A  PARTICULAR  PURPOSE  ARE
// DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
// ANY DIRECT, INDIRECT, INCIDENTAL,  SPECIAL,  EXEMPLARY, OR CONSEQUENTIAL DAMAGES
// (INCLUDING, BUT NOT LIMITED TO,  PROCUREMENT  OF  SUBSTITUTE  GOODS OR SERVICES;
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)  HOWEVER  CAUSED AND ON
// ANY  THEORY  OF  LIABILITY,  WHETHER  IN  CONTRACT,  STRICT  LIABILITY,  OR TORT
// (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING  IN  ANY WAY OUT OF THE USE OF THIS
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

//------------------------------------------------------------------------------
// <auto-generated>
//     This code was generated by a tool.
//     Runtime Version:2.0.50727.5466
//
//     Changes to this file may cause incorrect behavior and will be lost if
//     the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------

// 
// This source code was auto-generated by wsdl, Version=2.0.50727.42.
// 
namespace SolidCP.Server {
    using System.Diagnostics;
    using System.Web.Services;
    using System.ComponentModel;
    using System.Web.Services.Protocols;
    using System;
    using System.Xml.Serialization;
    using SolidCP.Providers;

    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    [System.Web.Services.WebServiceBindingAttribute(Name="WindowsServerSoap", Namespace="http://smbsaas/solidcp/server/")]
    public partial class WindowsServer : Microsoft.Web.Services3.WebServicesClientProtocol {
        
        private System.Threading.SendOrPostCallback GetTerminalServicesSessionsOperationCompleted;
        
        private System.Threading.SendOrPostCallback CloseTerminalServicesSessionOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWindowsProcessesOperationCompleted;
        
        private System.Threading.SendOrPostCallback TerminateWindowsProcessOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWindowsServicesOperationCompleted;
        
        private System.Threading.SendOrPostCallback ChangeWindowsServiceStatusOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIProductsOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIProductsFilteredOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIProductByIdOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPITabsOperationCompleted;
        
        private System.Threading.SendOrPostCallback InitWPIFeedsOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIKeywordsOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIProductsWithDependenciesOperationCompleted;
        
        private System.Threading.SendOrPostCallback InstallWPIProductsOperationCompleted;
        
        private System.Threading.SendOrPostCallback CancelInstallWPIProductsOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetWPIStatusOperationCompleted;
        
        private System.Threading.SendOrPostCallback WpiGetLogFileDirectoryOperationCompleted;
        
        private System.Threading.SendOrPostCallback WpiGetLogsInDirectoryOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetLogNamesOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetLogEntriesOperationCompleted;
        
        private System.Threading.SendOrPostCallback GetLogEntriesPagedOperationCompleted;
        
        private System.Threading.SendOrPostCallback ClearLogOperationCompleted;
        
        private System.Threading.SendOrPostCallback RebootSystemOperationCompleted;
        
        private System.Threading.SendOrPostCallback ExecuteSystemCommandOperationCompleted;
        
        /// <remarks/>
        public WindowsServer() {
            this.Url = "http://localhost:9003/WindowsServer.asmx";
        }
        
        /// <remarks/>
        public event GetTerminalServicesSessionsCompletedEventHandler GetTerminalServicesSessionsCompleted;
        
        /// <remarks/>
        public event CloseTerminalServicesSessionCompletedEventHandler CloseTerminalServicesSessionCompleted;
        
        /// <remarks/>
        public event GetWindowsProcessesCompletedEventHandler GetWindowsProcessesCompleted;
        
        /// <remarks/>
        public event TerminateWindowsProcessCompletedEventHandler TerminateWindowsProcessCompleted;
        
        /// <remarks/>
        public event GetWindowsServicesCompletedEventHandler GetWindowsServicesCompleted;
        
        /// <remarks/>
        public event ChangeWindowsServiceStatusCompletedEventHandler ChangeWindowsServiceStatusCompleted;
        
        /// <remarks/>
        public event GetWPIProductsCompletedEventHandler GetWPIProductsCompleted;
        
        /// <remarks/>
        public event GetWPIProductsFilteredCompletedEventHandler GetWPIProductsFilteredCompleted;
        
        /// <remarks/>
        public event GetWPIProductByIdCompletedEventHandler GetWPIProductByIdCompleted;
        
        /// <remarks/>
        public event GetWPITabsCompletedEventHandler GetWPITabsCompleted;
        
        /// <remarks/>
        public event InitWPIFeedsCompletedEventHandler InitWPIFeedsCompleted;
        
        /// <remarks/>
        public event GetWPIKeywordsCompletedEventHandler GetWPIKeywordsCompleted;
        
        /// <remarks/>
        public event GetWPIProductsWithDependenciesCompletedEventHandler GetWPIProductsWithDependenciesCompleted;
        
        /// <remarks/>
        public event InstallWPIProductsCompletedEventHandler InstallWPIProductsCompleted;
        
        /// <remarks/>
        public event CancelInstallWPIProductsCompletedEventHandler CancelInstallWPIProductsCompleted;
        
        /// <remarks/>
        public event GetWPIStatusCompletedEventHandler GetWPIStatusCompleted;
        
        /// <remarks/>
        public event WpiGetLogFileDirectoryCompletedEventHandler WpiGetLogFileDirectoryCompleted;
        
        /// <remarks/>
        public event WpiGetLogsInDirectoryCompletedEventHandler WpiGetLogsInDirectoryCompleted;
        
        /// <remarks/>
        public event GetLogNamesCompletedEventHandler GetLogNamesCompleted;
        
        /// <remarks/>
        public event GetLogEntriesCompletedEventHandler GetLogEntriesCompleted;
        
        /// <remarks/>
        public event GetLogEntriesPagedCompletedEventHandler GetLogEntriesPagedCompleted;
        
        /// <remarks/>
        public event ClearLogCompletedEventHandler ClearLogCompleted;
        
        /// <remarks/>
        public event RebootSystemCompletedEventHandler RebootSystemCompleted;
        
        /// <remarks/>
        public event ExecuteSystemCommandCompletedEventHandler ExecuteSystemCommandCompleted;
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetTerminalServicesSessions", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public TerminalSession[] GetTerminalServicesSessions() {
            object[] results = this.Invoke("GetTerminalServicesSessions", new object[0]);
            return ((TerminalSession[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetTerminalServicesSessions(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetTerminalServicesSessions", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public TerminalSession[] EndGetTerminalServicesSessions(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((TerminalSession[])(results[0]));
        }
        
        /// <remarks/>
        public void GetTerminalServicesSessionsAsync() {
            this.GetTerminalServicesSessionsAsync(null);
        }
        
        /// <remarks/>
        public void GetTerminalServicesSessionsAsync(object userState) {
            if ((this.GetTerminalServicesSessionsOperationCompleted == null)) {
                this.GetTerminalServicesSessionsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetTerminalServicesSessionsOperationCompleted);
            }
            this.InvokeAsync("GetTerminalServicesSessions", new object[0], this.GetTerminalServicesSessionsOperationCompleted, userState);
        }
        
        private void OnGetTerminalServicesSessionsOperationCompleted(object arg) {
            if ((this.GetTerminalServicesSessionsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetTerminalServicesSessionsCompleted(this, new GetTerminalServicesSessionsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/CloseTerminalServicesSession", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void CloseTerminalServicesSession(int sessionId) {
            this.Invoke("CloseTerminalServicesSession", new object[] {
                        sessionId});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginCloseTerminalServicesSession(int sessionId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("CloseTerminalServicesSession", new object[] {
                        sessionId}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndCloseTerminalServicesSession(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void CloseTerminalServicesSessionAsync(int sessionId) {
            this.CloseTerminalServicesSessionAsync(sessionId, null);
        }
        
        /// <remarks/>
        public void CloseTerminalServicesSessionAsync(int sessionId, object userState) {
            if ((this.CloseTerminalServicesSessionOperationCompleted == null)) {
                this.CloseTerminalServicesSessionOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCloseTerminalServicesSessionOperationCompleted);
            }
            this.InvokeAsync("CloseTerminalServicesSession", new object[] {
                        sessionId}, this.CloseTerminalServicesSessionOperationCompleted, userState);
        }
        
        private void OnCloseTerminalServicesSessionOperationCompleted(object arg) {
            if ((this.CloseTerminalServicesSessionCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CloseTerminalServicesSessionCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWindowsProcesses", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WindowsProcess[] GetWindowsProcesses() {
            object[] results = this.Invoke("GetWindowsProcesses", new object[0]);
            return ((WindowsProcess[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWindowsProcesses(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWindowsProcesses", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public WindowsProcess[] EndGetWindowsProcesses(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WindowsProcess[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWindowsProcessesAsync() {
            this.GetWindowsProcessesAsync(null);
        }
        
        /// <remarks/>
        public void GetWindowsProcessesAsync(object userState) {
            if ((this.GetWindowsProcessesOperationCompleted == null)) {
                this.GetWindowsProcessesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWindowsProcessesOperationCompleted);
            }
            this.InvokeAsync("GetWindowsProcesses", new object[0], this.GetWindowsProcessesOperationCompleted, userState);
        }
        
        private void OnGetWindowsProcessesOperationCompleted(object arg) {
            if ((this.GetWindowsProcessesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWindowsProcessesCompleted(this, new GetWindowsProcessesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/TerminateWindowsProcess", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void TerminateWindowsProcess(int pid) {
            this.Invoke("TerminateWindowsProcess", new object[] {
                        pid});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginTerminateWindowsProcess(int pid, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("TerminateWindowsProcess", new object[] {
                        pid}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndTerminateWindowsProcess(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void TerminateWindowsProcessAsync(int pid) {
            this.TerminateWindowsProcessAsync(pid, null);
        }
        
        /// <remarks/>
        public void TerminateWindowsProcessAsync(int pid, object userState) {
            if ((this.TerminateWindowsProcessOperationCompleted == null)) {
                this.TerminateWindowsProcessOperationCompleted = new System.Threading.SendOrPostCallback(this.OnTerminateWindowsProcessOperationCompleted);
            }
            this.InvokeAsync("TerminateWindowsProcess", new object[] {
                        pid}, this.TerminateWindowsProcessOperationCompleted, userState);
        }
        
        private void OnTerminateWindowsProcessOperationCompleted(object arg) {
            if ((this.TerminateWindowsProcessCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.TerminateWindowsProcessCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWindowsServices", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WindowsService[] GetWindowsServices() {
            object[] results = this.Invoke("GetWindowsServices", new object[0]);
            return ((WindowsService[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWindowsServices(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWindowsServices", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public WindowsService[] EndGetWindowsServices(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WindowsService[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWindowsServicesAsync() {
            this.GetWindowsServicesAsync(null);
        }
        
        /// <remarks/>
        public void GetWindowsServicesAsync(object userState) {
            if ((this.GetWindowsServicesOperationCompleted == null)) {
                this.GetWindowsServicesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWindowsServicesOperationCompleted);
            }
            this.InvokeAsync("GetWindowsServices", new object[0], this.GetWindowsServicesOperationCompleted, userState);
        }
        
        private void OnGetWindowsServicesOperationCompleted(object arg) {
            if ((this.GetWindowsServicesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWindowsServicesCompleted(this, new GetWindowsServicesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ChangeWindowsServiceStatus", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void ChangeWindowsServiceStatus(string id, WindowsServiceStatus status) {
            this.Invoke("ChangeWindowsServiceStatus", new object[] {
                        id,
                        status});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginChangeWindowsServiceStatus(string id, WindowsServiceStatus status, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("ChangeWindowsServiceStatus", new object[] {
                        id,
                        status}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndChangeWindowsServiceStatus(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status) {
            this.ChangeWindowsServiceStatusAsync(id, status, null);
        }
        
        /// <remarks/>
        public void ChangeWindowsServiceStatusAsync(string id, WindowsServiceStatus status, object userState) {
            if ((this.ChangeWindowsServiceStatusOperationCompleted == null)) {
                this.ChangeWindowsServiceStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnChangeWindowsServiceStatusOperationCompleted);
            }
            this.InvokeAsync("ChangeWindowsServiceStatus", new object[] {
                        id,
                        status}, this.ChangeWindowsServiceStatusOperationCompleted, userState);
        }
        
        private void OnChangeWindowsServiceStatusOperationCompleted(object arg) {
            if ((this.ChangeWindowsServiceStatusCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ChangeWindowsServiceStatusCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIProducts", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPIProduct[] GetWPIProducts(string tabId, string keywordId) {
            object[] results = this.Invoke("GetWPIProducts", new object[] {
                        tabId,
                        keywordId});
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIProducts(string tabId, string keywordId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIProducts", new object[] {
                        tabId,
                        keywordId}, callback, asyncState);
        }
        
        /// <remarks/>
        public WPIProduct[] EndGetWPIProducts(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIProductsAsync(string tabId, string keywordId) {
            this.GetWPIProductsAsync(tabId, keywordId, null);
        }
        
        /// <remarks/>
        public void GetWPIProductsAsync(string tabId, string keywordId, object userState) {
            if ((this.GetWPIProductsOperationCompleted == null)) {
                this.GetWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsOperationCompleted);
            }
            this.InvokeAsync("GetWPIProducts", new object[] {
                        tabId,
                        keywordId}, this.GetWPIProductsOperationCompleted, userState);
        }
        
        private void OnGetWPIProductsOperationCompleted(object arg) {
            if ((this.GetWPIProductsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIProductsCompleted(this, new GetWPIProductsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIProductsFiltered", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPIProduct[] GetWPIProductsFiltered(string filter) {
            object[] results = this.Invoke("GetWPIProductsFiltered", new object[] {
                        filter});
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIProductsFiltered(string filter, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIProductsFiltered", new object[] {
                        filter}, callback, asyncState);
        }
        
        /// <remarks/>
        public WPIProduct[] EndGetWPIProductsFiltered(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIProductsFilteredAsync(string filter) {
            this.GetWPIProductsFilteredAsync(filter, null);
        }
        
        /// <remarks/>
        public void GetWPIProductsFilteredAsync(string filter, object userState) {
            if ((this.GetWPIProductsFilteredOperationCompleted == null)) {
                this.GetWPIProductsFilteredOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsFilteredOperationCompleted);
            }
            this.InvokeAsync("GetWPIProductsFiltered", new object[] {
                        filter}, this.GetWPIProductsFilteredOperationCompleted, userState);
        }
        
        private void OnGetWPIProductsFilteredOperationCompleted(object arg) {
            if ((this.GetWPIProductsFilteredCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIProductsFilteredCompleted(this, new GetWPIProductsFilteredCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIProductById", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPIProduct GetWPIProductById(string productdId) {
            object[] results = this.Invoke("GetWPIProductById", new object[] {
                        productdId});
            return ((WPIProduct)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIProductById(string productdId, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIProductById", new object[] {
                        productdId}, callback, asyncState);
        }
        
        /// <remarks/>
        public WPIProduct EndGetWPIProductById(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPIProduct)(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIProductByIdAsync(string productdId) {
            this.GetWPIProductByIdAsync(productdId, null);
        }
        
        /// <remarks/>
        public void GetWPIProductByIdAsync(string productdId, object userState) {
            if ((this.GetWPIProductByIdOperationCompleted == null)) {
                this.GetWPIProductByIdOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductByIdOperationCompleted);
            }
            this.InvokeAsync("GetWPIProductById", new object[] {
                        productdId}, this.GetWPIProductByIdOperationCompleted, userState);
        }
        
        private void OnGetWPIProductByIdOperationCompleted(object arg) {
            if ((this.GetWPIProductByIdCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIProductByIdCompleted(this, new GetWPIProductByIdCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPITabs", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPITab[] GetWPITabs() {
            object[] results = this.Invoke("GetWPITabs", new object[0]);
            return ((WPITab[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPITabs(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPITabs", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public WPITab[] EndGetWPITabs(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPITab[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWPITabsAsync() {
            this.GetWPITabsAsync(null);
        }
        
        /// <remarks/>
        public void GetWPITabsAsync(object userState) {
            if ((this.GetWPITabsOperationCompleted == null)) {
                this.GetWPITabsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPITabsOperationCompleted);
            }
            this.InvokeAsync("GetWPITabs", new object[0], this.GetWPITabsOperationCompleted, userState);
        }
        
        private void OnGetWPITabsOperationCompleted(object arg) {
            if ((this.GetWPITabsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPITabsCompleted(this, new GetWPITabsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/InitWPIFeeds", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void InitWPIFeeds(string feedUrls) {
            this.Invoke("InitWPIFeeds", new object[] {
                        feedUrls});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginInitWPIFeeds(string feedUrls, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("InitWPIFeeds", new object[] {
                        feedUrls}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndInitWPIFeeds(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void InitWPIFeedsAsync(string feedUrls) {
            this.InitWPIFeedsAsync(feedUrls, null);
        }
        
        /// <remarks/>
        public void InitWPIFeedsAsync(string feedUrls, object userState) {
            if ((this.InitWPIFeedsOperationCompleted == null)) {
                this.InitWPIFeedsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInitWPIFeedsOperationCompleted);
            }
            this.InvokeAsync("InitWPIFeeds", new object[] {
                        feedUrls}, this.InitWPIFeedsOperationCompleted, userState);
        }
        
        private void OnInitWPIFeedsOperationCompleted(object arg) {
            if ((this.InitWPIFeedsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.InitWPIFeedsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIKeywords", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPIKeyword[] GetWPIKeywords() {
            object[] results = this.Invoke("GetWPIKeywords", new object[0]);
            return ((WPIKeyword[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIKeywords(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIKeywords", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public WPIKeyword[] EndGetWPIKeywords(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPIKeyword[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIKeywordsAsync() {
            this.GetWPIKeywordsAsync(null);
        }
        
        /// <remarks/>
        public void GetWPIKeywordsAsync(object userState) {
            if ((this.GetWPIKeywordsOperationCompleted == null)) {
                this.GetWPIKeywordsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIKeywordsOperationCompleted);
            }
            this.InvokeAsync("GetWPIKeywords", new object[0], this.GetWPIKeywordsOperationCompleted, userState);
        }
        
        private void OnGetWPIKeywordsOperationCompleted(object arg) {
            if ((this.GetWPIKeywordsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIKeywordsCompleted(this, new GetWPIKeywordsCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIProductsWithDependencies", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public WPIProduct[] GetWPIProductsWithDependencies(string[] products) {
            object[] results = this.Invoke("GetWPIProductsWithDependencies", new object[] {
                        products});
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIProductsWithDependencies(string[] products, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIProductsWithDependencies", new object[] {
                        products}, callback, asyncState);
        }
        
        /// <remarks/>
        public WPIProduct[] EndGetWPIProductsWithDependencies(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((WPIProduct[])(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIProductsWithDependenciesAsync(string[] products) {
            this.GetWPIProductsWithDependenciesAsync(products, null);
        }
        
        /// <remarks/>
        public void GetWPIProductsWithDependenciesAsync(string[] products, object userState) {
            if ((this.GetWPIProductsWithDependenciesOperationCompleted == null)) {
                this.GetWPIProductsWithDependenciesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIProductsWithDependenciesOperationCompleted);
            }
            this.InvokeAsync("GetWPIProductsWithDependencies", new object[] {
                        products}, this.GetWPIProductsWithDependenciesOperationCompleted, userState);
        }
        
        private void OnGetWPIProductsWithDependenciesOperationCompleted(object arg) {
            if ((this.GetWPIProductsWithDependenciesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIProductsWithDependenciesCompleted(this, new GetWPIProductsWithDependenciesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/InstallWPIProducts", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void InstallWPIProducts(string[] products) {
            this.Invoke("InstallWPIProducts", new object[] {
                        products});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginInstallWPIProducts(string[] products, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("InstallWPIProducts", new object[] {
                        products}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndInstallWPIProducts(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void InstallWPIProductsAsync(string[] products) {
            this.InstallWPIProductsAsync(products, null);
        }
        
        /// <remarks/>
        public void InstallWPIProductsAsync(string[] products, object userState) {
            if ((this.InstallWPIProductsOperationCompleted == null)) {
                this.InstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnInstallWPIProductsOperationCompleted);
            }
            this.InvokeAsync("InstallWPIProducts", new object[] {
                        products}, this.InstallWPIProductsOperationCompleted, userState);
        }
        
        private void OnInstallWPIProductsOperationCompleted(object arg) {
            if ((this.InstallWPIProductsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.InstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/CancelInstallWPIProducts", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void CancelInstallWPIProducts() {
            this.Invoke("CancelInstallWPIProducts", new object[0]);
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginCancelInstallWPIProducts(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("CancelInstallWPIProducts", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public void EndCancelInstallWPIProducts(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void CancelInstallWPIProductsAsync() {
            this.CancelInstallWPIProductsAsync(null);
        }
        
        /// <remarks/>
        public void CancelInstallWPIProductsAsync(object userState) {
            if ((this.CancelInstallWPIProductsOperationCompleted == null)) {
                this.CancelInstallWPIProductsOperationCompleted = new System.Threading.SendOrPostCallback(this.OnCancelInstallWPIProductsOperationCompleted);
            }
            this.InvokeAsync("CancelInstallWPIProducts", new object[0], this.CancelInstallWPIProductsOperationCompleted, userState);
        }
        
        private void OnCancelInstallWPIProductsOperationCompleted(object arg) {
            if ((this.CancelInstallWPIProductsCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.CancelInstallWPIProductsCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetWPIStatus", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string GetWPIStatus() {
            object[] results = this.Invoke("GetWPIStatus", new object[0]);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetWPIStatus(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetWPIStatus", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public string EndGetWPIStatus(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public void GetWPIStatusAsync() {
            this.GetWPIStatusAsync(null);
        }
        
        /// <remarks/>
        public void GetWPIStatusAsync(object userState) {
            if ((this.GetWPIStatusOperationCompleted == null)) {
                this.GetWPIStatusOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetWPIStatusOperationCompleted);
            }
            this.InvokeAsync("GetWPIStatus", new object[0], this.GetWPIStatusOperationCompleted, userState);
        }
        
        private void OnGetWPIStatusOperationCompleted(object arg) {
            if ((this.GetWPIStatusCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetWPIStatusCompleted(this, new GetWPIStatusCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/WpiGetLogFileDirectory", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string WpiGetLogFileDirectory() {
            object[] results = this.Invoke("WpiGetLogFileDirectory", new object[0]);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginWpiGetLogFileDirectory(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("WpiGetLogFileDirectory", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public string EndWpiGetLogFileDirectory(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public void WpiGetLogFileDirectoryAsync() {
            this.WpiGetLogFileDirectoryAsync(null);
        }
        
        /// <remarks/>
        public void WpiGetLogFileDirectoryAsync(object userState) {
            if ((this.WpiGetLogFileDirectoryOperationCompleted == null)) {
                this.WpiGetLogFileDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogFileDirectoryOperationCompleted);
            }
            this.InvokeAsync("WpiGetLogFileDirectory", new object[0], this.WpiGetLogFileDirectoryOperationCompleted, userState);
        }
        
        private void OnWpiGetLogFileDirectoryOperationCompleted(object arg) {
            if ((this.WpiGetLogFileDirectoryCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WpiGetLogFileDirectoryCompleted(this, new WpiGetLogFileDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/WpiGetLogsInDirectory", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public SettingPair[] WpiGetLogsInDirectory(string Path) {
            object[] results = this.Invoke("WpiGetLogsInDirectory", new object[] {
                        Path});
            return ((SettingPair[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginWpiGetLogsInDirectory(string Path, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("WpiGetLogsInDirectory", new object[] {
                        Path}, callback, asyncState);
        }
        
        /// <remarks/>
        public SettingPair[] EndWpiGetLogsInDirectory(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((SettingPair[])(results[0]));
        }
        
        /// <remarks/>
        public void WpiGetLogsInDirectoryAsync(string Path) {
            this.WpiGetLogsInDirectoryAsync(Path, null);
        }
        
        /// <remarks/>
        public void WpiGetLogsInDirectoryAsync(string Path, object userState) {
            if ((this.WpiGetLogsInDirectoryOperationCompleted == null)) {
                this.WpiGetLogsInDirectoryOperationCompleted = new System.Threading.SendOrPostCallback(this.OnWpiGetLogsInDirectoryOperationCompleted);
            }
            this.InvokeAsync("WpiGetLogsInDirectory", new object[] {
                        Path}, this.WpiGetLogsInDirectoryOperationCompleted, userState);
        }
        
        private void OnWpiGetLogsInDirectoryOperationCompleted(object arg) {
            if ((this.WpiGetLogsInDirectoryCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.WpiGetLogsInDirectoryCompleted(this, new WpiGetLogsInDirectoryCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetLogNames", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string[] GetLogNames() {
            object[] results = this.Invoke("GetLogNames", new object[0]);
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetLogNames(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetLogNames", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public string[] EndGetLogNames(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string[])(results[0]));
        }
        
        /// <remarks/>
        public void GetLogNamesAsync() {
            this.GetLogNamesAsync(null);
        }
        
        /// <remarks/>
        public void GetLogNamesAsync(object userState) {
            if ((this.GetLogNamesOperationCompleted == null)) {
                this.GetLogNamesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogNamesOperationCompleted);
            }
            this.InvokeAsync("GetLogNames", new object[0], this.GetLogNamesOperationCompleted, userState);
        }
        
        private void OnGetLogNamesOperationCompleted(object arg) {
            if ((this.GetLogNamesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetLogNamesCompleted(this, new GetLogNamesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetLogEntries", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public SystemLogEntry[] GetLogEntries(string logName) {
            object[] results = this.Invoke("GetLogEntries", new object[] {
                        logName});
            return ((SystemLogEntry[])(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetLogEntries(string logName, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetLogEntries", new object[] {
                        logName}, callback, asyncState);
        }
        
        /// <remarks/>
        public SystemLogEntry[] EndGetLogEntries(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((SystemLogEntry[])(results[0]));
        }
        
        /// <remarks/>
        public void GetLogEntriesAsync(string logName) {
            this.GetLogEntriesAsync(logName, null);
        }
        
        /// <remarks/>
        public void GetLogEntriesAsync(string logName, object userState) {
            if ((this.GetLogEntriesOperationCompleted == null)) {
                this.GetLogEntriesOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogEntriesOperationCompleted);
            }
            this.InvokeAsync("GetLogEntries", new object[] {
                        logName}, this.GetLogEntriesOperationCompleted, userState);
        }
        
        private void OnGetLogEntriesOperationCompleted(object arg) {
            if ((this.GetLogEntriesCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetLogEntriesCompleted(this, new GetLogEntriesCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/GetLogEntriesPaged", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public SystemLogEntriesPaged GetLogEntriesPaged(string logName, int startRow, int maximumRows) {
            object[] results = this.Invoke("GetLogEntriesPaged", new object[] {
                        logName,
                        startRow,
                        maximumRows});
            return ((SystemLogEntriesPaged)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginGetLogEntriesPaged(string logName, int startRow, int maximumRows, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("GetLogEntriesPaged", new object[] {
                        logName,
                        startRow,
                        maximumRows}, callback, asyncState);
        }
        
        /// <remarks/>
        public SystemLogEntriesPaged EndGetLogEntriesPaged(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((SystemLogEntriesPaged)(results[0]));
        }
        
        /// <remarks/>
        public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows) {
            this.GetLogEntriesPagedAsync(logName, startRow, maximumRows, null);
        }
        
        /// <remarks/>
        public void GetLogEntriesPagedAsync(string logName, int startRow, int maximumRows, object userState) {
            if ((this.GetLogEntriesPagedOperationCompleted == null)) {
                this.GetLogEntriesPagedOperationCompleted = new System.Threading.SendOrPostCallback(this.OnGetLogEntriesPagedOperationCompleted);
            }
            this.InvokeAsync("GetLogEntriesPaged", new object[] {
                        logName,
                        startRow,
                        maximumRows}, this.GetLogEntriesPagedOperationCompleted, userState);
        }
        
        private void OnGetLogEntriesPagedOperationCompleted(object arg) {
            if ((this.GetLogEntriesPagedCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.GetLogEntriesPagedCompleted(this, new GetLogEntriesPagedCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ClearLog", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void ClearLog(string logName) {
            this.Invoke("ClearLog", new object[] {
                        logName});
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginClearLog(string logName, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("ClearLog", new object[] {
                        logName}, callback, asyncState);
        }
        
        /// <remarks/>
        public void EndClearLog(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void ClearLogAsync(string logName) {
            this.ClearLogAsync(logName, null);
        }
        
        /// <remarks/>
        public void ClearLogAsync(string logName, object userState) {
            if ((this.ClearLogOperationCompleted == null)) {
                this.ClearLogOperationCompleted = new System.Threading.SendOrPostCallback(this.OnClearLogOperationCompleted);
            }
            this.InvokeAsync("ClearLog", new object[] {
                        logName}, this.ClearLogOperationCompleted, userState);
        }
        
        private void OnClearLogOperationCompleted(object arg) {
            if ((this.ClearLogCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ClearLogCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/RebootSystem", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public void RebootSystem() {
            this.Invoke("RebootSystem", new object[0]);
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginRebootSystem(System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("RebootSystem", new object[0], callback, asyncState);
        }
        
        /// <remarks/>
        public void EndRebootSystem(System.IAsyncResult asyncResult) {
            this.EndInvoke(asyncResult);
        }
        
        /// <remarks/>
        public void RebootSystemAsync() {
            this.RebootSystemAsync(null);
        }
        
        /// <remarks/>
        public void RebootSystemAsync(object userState) {
            if ((this.RebootSystemOperationCompleted == null)) {
                this.RebootSystemOperationCompleted = new System.Threading.SendOrPostCallback(this.OnRebootSystemOperationCompleted);
            }
            this.InvokeAsync("RebootSystem", new object[0], this.RebootSystemOperationCompleted, userState);
        }
        
        private void OnRebootSystemOperationCompleted(object arg) {
            if ((this.RebootSystemCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.RebootSystemCompleted(this, new System.ComponentModel.AsyncCompletedEventArgs(invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        [System.Web.Services.Protocols.SoapDocumentMethodAttribute("http://smbsaas/solidcp/server/ExecuteSystemCommand", RequestNamespace="http://smbsaas/solidcp/server/", ResponseNamespace="http://smbsaas/solidcp/server/", Use=System.Web.Services.Description.SoapBindingUse.Literal, ParameterStyle=System.Web.Services.Protocols.SoapParameterStyle.Wrapped)]
        public string ExecuteSystemCommand(string path, string args) {
            object[] results = this.Invoke("ExecuteSystemCommand", new object[] {
                        path,
                        args});
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public System.IAsyncResult BeginExecuteSystemCommand(string path, string args, System.AsyncCallback callback, object asyncState) {
            return this.BeginInvoke("ExecuteSystemCommand", new object[] {
                        path,
                        args}, callback, asyncState);
        }
        
        /// <remarks/>
        public string EndExecuteSystemCommand(System.IAsyncResult asyncResult) {
            object[] results = this.EndInvoke(asyncResult);
            return ((string)(results[0]));
        }
        
        /// <remarks/>
        public void ExecuteSystemCommandAsync(string path, string args) {
            this.ExecuteSystemCommandAsync(path, args, null);
        }
        
        /// <remarks/>
        public void ExecuteSystemCommandAsync(string path, string args, object userState) {
            if ((this.ExecuteSystemCommandOperationCompleted == null)) {
                this.ExecuteSystemCommandOperationCompleted = new System.Threading.SendOrPostCallback(this.OnExecuteSystemCommandOperationCompleted);
            }
            this.InvokeAsync("ExecuteSystemCommand", new object[] {
                        path,
                        args}, this.ExecuteSystemCommandOperationCompleted, userState);
        }
        
        private void OnExecuteSystemCommandOperationCompleted(object arg) {
            if ((this.ExecuteSystemCommandCompleted != null)) {
                System.Web.Services.Protocols.InvokeCompletedEventArgs invokeArgs = ((System.Web.Services.Protocols.InvokeCompletedEventArgs)(arg));
                this.ExecuteSystemCommandCompleted(this, new ExecuteSystemCommandCompletedEventArgs(invokeArgs.Results, invokeArgs.Error, invokeArgs.Cancelled, invokeArgs.UserState));
            }
        }
        
        /// <remarks/>
        public new void CancelAsync(object userState) {
            base.CancelAsync(userState);
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetTerminalServicesSessionsCompletedEventHandler(object sender, GetTerminalServicesSessionsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetTerminalServicesSessionsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetTerminalServicesSessionsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public TerminalSession[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((TerminalSession[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CloseTerminalServicesSessionCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWindowsProcessesCompletedEventHandler(object sender, GetWindowsProcessesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWindowsProcessesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWindowsProcessesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WindowsProcess[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WindowsProcess[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void TerminateWindowsProcessCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWindowsServicesCompletedEventHandler(object sender, GetWindowsServicesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWindowsServicesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWindowsServicesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WindowsService[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WindowsService[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ChangeWindowsServiceStatusCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIProductsCompletedEventHandler(object sender, GetWPIProductsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIProductsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIProductsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPIProduct[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPIProduct[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIProductsFilteredCompletedEventHandler(object sender, GetWPIProductsFilteredCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIProductsFilteredCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIProductsFilteredCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPIProduct[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPIProduct[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIProductByIdCompletedEventHandler(object sender, GetWPIProductByIdCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIProductByIdCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIProductByIdCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPIProduct Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPIProduct)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPITabsCompletedEventHandler(object sender, GetWPITabsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPITabsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPITabsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPITab[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPITab[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void InitWPIFeedsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIKeywordsCompletedEventHandler(object sender, GetWPIKeywordsCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIKeywordsCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIKeywordsCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPIKeyword[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPIKeyword[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIProductsWithDependenciesCompletedEventHandler(object sender, GetWPIProductsWithDependenciesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIProductsWithDependenciesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIProductsWithDependenciesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public WPIProduct[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((WPIProduct[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void InstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void CancelInstallWPIProductsCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetWPIStatusCompletedEventHandler(object sender, GetWPIStatusCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetWPIStatusCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetWPIStatusCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void WpiGetLogFileDirectoryCompletedEventHandler(object sender, WpiGetLogFileDirectoryCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WpiGetLogFileDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WpiGetLogFileDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void WpiGetLogsInDirectoryCompletedEventHandler(object sender, WpiGetLogsInDirectoryCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class WpiGetLogsInDirectoryCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal WpiGetLogsInDirectoryCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public SettingPair[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((SettingPair[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetLogNamesCompletedEventHandler(object sender, GetLogNamesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetLogNamesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetLogNamesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetLogEntriesCompletedEventHandler(object sender, GetLogEntriesCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetLogEntriesCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetLogEntriesCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public SystemLogEntry[] Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((SystemLogEntry[])(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void GetLogEntriesPagedCompletedEventHandler(object sender, GetLogEntriesPagedCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class GetLogEntriesPagedCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal GetLogEntriesPagedCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public SystemLogEntriesPaged Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((SystemLogEntriesPaged)(this.results[0]));
            }
        }
    }
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ClearLogCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void RebootSystemCompletedEventHandler(object sender, System.ComponentModel.AsyncCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    public delegate void ExecuteSystemCommandCompletedEventHandler(object sender, ExecuteSystemCommandCompletedEventArgs e);
    
    /// <remarks/>
    [System.CodeDom.Compiler.GeneratedCodeAttribute("wsdl", "2.0.50727.42")]
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.ComponentModel.DesignerCategoryAttribute("code")]
    public partial class ExecuteSystemCommandCompletedEventArgs : System.ComponentModel.AsyncCompletedEventArgs {
        
        private object[] results;
        
        internal ExecuteSystemCommandCompletedEventArgs(object[] results, System.Exception exception, bool cancelled, object userState) : 
                base(exception, cancelled, userState) {
            this.results = results;
        }
        
        /// <remarks/>
        public string Result {
            get {
                this.RaiseExceptionIfNecessary();
                return ((string)(this.results[0]));
            }
        }
    }
}
